<html>
<head>
<title>TemporalCleaner</title>
<link rel="stylesheet" type="text/css" href="../../avisynth.css">
<!--
Automatically generated, don't change:
$Id: temporalcleaner.htm,v 1.2 2005/10/03 16:49:04 macpaille Exp $ 
-->
</head>
<body>
<h1>TemporalCleaner</h1>
<h2>Abstract</h2>
<b>author:</b>  TemporalCleaner (by Jim Casaburi; ported to AviSynth by Vlad59)<br>
<b>version:</b> Beta 2<br>
<b>dowload:</b> <a href="http://www.avisynth.org/warpenterprises/">http://www.avisynth.org/warpenterprises/</a>
<br><b>category:</b> Temporal Smoothers
<br><b>requirements:</b> &nbsp;
<ul>
  <li>YUY2 Colorspace</li>
  <li>ISSE support</li>
</ul>
<hr>
<h2>Description</h2>
<p>TemporalCleaner is an avisynth port of the original port of the VirtualDub filter
made by <a href="http://home.earthlink.net/~casaburi/download/#temporalcleaner"><cite> Jim Casaburi</cite></a>.
</p>
<p>I just added some ASM to Jim's algo.
</p>
<h3>1 - What it does&nbsp;
</h3>
<p>if the difference between previous pixel and current pixel is below a blur threshold
then replace the current pixel by the average between previous and current pixel
else keep current pixel.
</p>
<p>An other trick is to add some feedback to this filter : instead of using the unfiltered
previous frame it uses the already filtered one.
</p>
<p>Simple isn't it ?
</p>
<h3>2 - Parameters
</h3>
<p><code>TemporalCleaner</code> (<var>clip, int &quot;ythresh&quot;, int &quot;cthresh&quot;</var>)
</p>
<p><var>ythresh</var> (default value = 5) : blur luma threshold (don't go above 8 otherwise you'll have
some ghosting).
</p>
<p><var>cthresh</var> (default value = 10) : blur chroma threshold (you can safely go a little above 8 as
if luma is above threshold -> chroma is automatically kept (no blur)).
</p>
<h3>3 - Current limitations or known problems
</h3>
<p>- Work only with YUV2, CHECKED.<br>
	- require a Integer SSE capable CPU (no PII and K6-II), CHECKED.<br>
	- Require a mod-4 width (NOT CHECKED)
</p>
<h3>4 - Credits
</h3>
<p>Thanks to<br>
	- Jim Casaburi for the original idea (I'm just his translator ;))<br>
	- Zarxrax and Ligh for the beta testing
</p>
<p>Vlad59 (babas.lucas at laposte.net)
</p>
<h3>Change log
</h3>
<p>2003/01/13 beta2  :
</p>
<ul>
  <li>Some minor speedup</li>
  <li>Reorganize all the code to mix Avisynth 2.5 and 2.0X in the same .cpp and .h</li>
</ul>
<p>2002/11/09 beta1  :</p>
<ul>
  <li>Initial release</li>
</ul>
<p><kbd>$Date: 2005/10/03 16:49:04 $</kbd>
</p>
</body>
</html>
